/******************************************************************************* * Copyright (c) 2000, 2006 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * IBM Corporation - initial API and implementation *******************************************************************************/ package org.eclipse.ui.tests.stress; //import java.util.HashMap; // //import org.eclipse.core.commands.Command; //import org.eclipse.core.commands.ExecutionException; //import org.eclipse.core.commands.NotEnabledException; //import org.eclipse.core.commands.NotHandledException; //import org.eclipse.core.commands.ParameterizedCommand; //import org.eclipse.core.commands.common.NotDefinedException; //import org.eclipse.core.resources.IProject; //import org.eclipse.core.resources.ResourcesPlugin; //import org.eclipse.ui.IEditorInput; //import org.eclipse.ui.IEditorPart; import org.eclipse.ui.IViewPart; import org.eclipse.ui.IWorkbenchPage; import org.eclipse.ui.IWorkbenchWindow; import org.eclipse.ui.PlatformUI; import org.eclipse.ui.WorkbenchException; //import org.eclipse.ui.commands.ICommandService; //import org.eclipse.ui.handlers.IHandlerService; import org.eclipse.ui.internal.WorkbenchWindow; //import org.eclipse.ui.intro.IIntroPart; //import org.eclipse.ui.part.FileEditorInput; //import org.eclipse.ui.tests.harness.util.FileUtil; import org.eclipse.ui.tests.harness.util.UITestCase; /** * Test opening and closing of items. */ public class OpenCloseTest extends UITestCase { /** * */ private static final String ORG_ECLIPSE_JDT_UI_JAVA_PERSPECTIVE = "org.eclipse.jdt.ui.JavaPerspective"; private static int index; private static final int numIterations = 10; private WorkbenchWindow workbenchWindow; /** * Constructor. * * @param testName * Test's name. */ public OpenCloseTest(String testName) { super(testName); workbenchWindow = (WorkbenchWindow) PlatformUI.getWorkbench() .getActiveWorkbenchWindow(); } // /** // * Test the opening and closing of a file. // * // */ // public void testOpenCloseFile() { // IWorkbenchPage page = workbenchWindow.getActivePage(); // try { // FileUtil.createProject("TestProject"); // IProject testProject = ResourcesPlugin.getWorkspace().getRoot() // .getProject("TestProject"); //$NON-NLS-1$ // FileUtil.createFile("tempFile.txt", testProject); // testProject.open(null); // IEditorInput editorInput = new FileEditorInput(testProject // .getFile("tempFile.txt")); // IEditorPart editorPart = null; // for (index = 0; index < numIterations; index++) { // editorPart = page.openEditor(editorInput, // "org.eclipse.ui.DefaultTextEditor"); //$NON-NLS-1$ // page.closeEditor(editorPart, false); // } // FileUtil.deleteProject(testProject); // } catch (Exception e) { // e.printStackTrace(System.err); // } // } /** * Test opening and closing of workbench window. * */ public void testOpenCloseWorkbenchWindow() { IWorkbenchWindow secondWorkbenchWindow = null; try { for (index = 0; index < numIterations; index++) { secondWorkbenchWindow = PlatformUI.getWorkbench() .openWorkbenchWindow(getPageInput()); secondWorkbenchWindow.close(); } } catch (WorkbenchException e) { e.printStackTrace(System.err); } } // /** // * Test open and close of perspective. // * // */ // public void testOpenClosePerspective() { // ICommandService commandService = (ICommandService) fWorkbench.getService(ICommandService.class); // Command command = commandService.getCommand("org.eclipse.ui.window.closePerspective"); // // HashMap parameters = new HashMap(); // parameters.put("org.eclipse.ui.window.closePerspective.perspectiveId", // ORG_ECLIPSE_JDT_UI_JAVA_PERSPECTIVE); // // ParameterizedCommand pCommand = ParameterizedCommand.generateCommand(command, parameters); // // IHandlerService handlerService = (IHandlerService) workbenchWindow // .getService(IHandlerService.class); // // for (index = 0; index < numIterations; index++) { // try { // PlatformUI.getWorkbench().showPerspective( // ORG_ECLIPSE_JDT_UI_JAVA_PERSPECTIVE, workbenchWindow); // try { // handlerService.executeCommand(pCommand, null); // } catch (ExecutionException e1) { // } catch (NotDefinedException e1) { // } catch (NotEnabledException e1) { // } catch (NotHandledException e1) { // } // } catch (WorkbenchException e) { // e.printStackTrace(); // } // } // } /** * Test open and close of view. * */ public void testOpenCloseView() { IViewPart consoleView = null; try { IWorkbenchPage page = PlatformUI.getWorkbench().showPerspective( ORG_ECLIPSE_JDT_UI_JAVA_PERSPECTIVE, workbenchWindow); for (index = 0; index < numIterations; index++) { consoleView = page .showView("org.eclipse.ui.views.ResourceNavigator"); page.hideView(consoleView); } } catch (WorkbenchException e) { e.printStackTrace(); } } // /** // * Test open and close intro. // * // */ // public void testOpenCloseIntro() { // IIntroPart introPart = null; // for (index = 0; index < numIterations; index++) { // introPart = PlatformUI.getWorkbench().getIntroManager().showIntro( // workbenchWindow, false); // PlatformUI.getWorkbench().getIntroManager().closeIntro(introPart); // } // } }